<?php
/**
 * Ecart
 * 
 * This file is part of Ecart.
 * 
 * Ecart is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * Ecart is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with Ecart.  If not, see <http://www.gnu.org/licenses/>.
 * 
 * @category    Ecart
 * @package     Ecart_BaseCurrency
 * @copyright   Copyright 2008-2009 E-Cart LLC
 * @license     GNU Public License V3.0
 */

/**
 * 
 * @category    Ecart
 * @package     Ecart_BaseCurrency
 * @subpackage  Handler
 * @author      Ecart Core Team <core@ecartcommerce.com>
 */
class Ecart_Config_Handler_BaseCurrency implements  Ecart_Config_Handler_Interface
{
    /**
     *
     * @static
     * @param string $value
     * @return string
     */
    public static function getSaveValue($value)
    {
        $row = Ecart::single('locale/currency')->fetchRow(
            Ecart::db()->quoteInto('code = ?' , $value)
        );
        if ($row instanceof Ecart_Db_Table_Row && 1 !== $row->rate) {
        
            $row->rate = 1;
            $row->save();
            Ecart::message()->addNotice(Ecart::translate('locale')->__(
                'Currency rate was changed to 1.00'
            ));
        }
        
        return $value;
    }

    /**
     *
     * @param string $value
     * @param Zend_View_Interface $view
     * @return string
     */
    public static function getHtml($value, Zend_View_Interface $view = null) 
    {
        return $view->formSelect('confValue',
            $value, null, Ecart_Collect_Currency::collect()
        );
    }

    /**
     *
     * @param string $value
     * @return string
     */
    public static function getConfig($value)
    {
        return $value;
    }
}
